package com.yunji.cabinet.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunji.common.annotation.Excel;
import com.yunji.common.base.BaseDelFlagDO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.Date;

@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("tb_upgrade_info")
public class UpgradeInfoDO extends BaseDelFlagDO {

    @ApiModelProperty("详情ID")
    @TableId(type = IdType.AUTO)
    private Long infoId;

    @ApiModelProperty("任务编码")
    private String taskCode;

    @ApiModelProperty("货柜ID")
    private Long containerId;

    @ApiModelProperty("货柜名称")
    private String containerName;

    @ApiModelProperty("货柜Imei")
    private String chipImei;

    @ApiModelProperty("货柜类型ID")
    private Integer typeId;

    @ApiModelProperty("货柜类型名称")
    @Excel(name = "货柜类型名称")
    private String typeName;

    @ApiModelProperty("代理ID")
    private Long agentId;

    @ApiModelProperty("代理名称")
    private String agentName;

    @ApiModelProperty("网点ID")
    private Long siteId;

    @ApiModelProperty("网点名称")
    private String siteName;

    @ApiModelProperty("在线状态")
    private Integer onlineStatus;

    @ApiModelProperty("文件ID")
    private Long fileId;

    @ApiModelProperty("芯片类型")
    private String chipType;

    @ApiModelProperty("软件版本")
    private String version;

    @ApiModelProperty("重试次数")
    private Integer retryTimes;

    @ApiModelProperty("状态  0-待开始 1-已就绪 2-进行中 3-已完成 4-已取消")
    private Integer infoStatus;

    @ApiModelProperty("是否重试 0-是 1-否")
    private Integer whetherRetry;

    @ApiModelProperty("开始时间")
    private Date startTime;

    @ApiModelProperty("结束时间")
    private Date closeTime;

    @ApiModelProperty("使用时间")
    private Date useTime;

}
